gdkwindow: Always pass the impl window to GdkWindowImpl::get_root_coords
authorJasper St. Pierre <jstpierre@mecheye.net>
Fri, 28 Feb 2014 02:02:22 +0000 (21:02 -0500)
committerJasper St. Pierre <jstpierre@mecheye.net>
Fri, 28 Feb 2014 02:06:35 +0000 (21:06 -0500)
commit0f212b5fb7f311ac54e98f8bd86874b5ac86a1e1
tree5e1a12e1b8182707d2f58b147ac49f85cc72614f
parentb922e0e213a30b823ced4349baa2a46578a2221c
gdkwindow: Always pass the impl window to GdkWindowImpl::get_root_coords

The point of GdkWindowImpl::get_root_coords is to translate the passed
in coordinates against the passed-in impl window. For a child window,
in fact, window->abs_x and window->abs_y already track the child
window's coordinates against the impl window.

If we pass in a child window, and backends don't explicitly get the impl
window from it, we'll double-count the child window.

Really, we should *always* be passing impl windows to backends, and
never child windows. However, I'm a bit worried for regressions late
in the cycle if we want to fix up the rest of the callers, like
gdk_window_get_geometry, so I'm only going to touch get_root_coords
for now after careful review of all the backends.
gdk/gdkwindow.c